'use strict';

const Service = require('egg').Service;

class ClassifyService extends Service {

  async getAllClassify() {
    const res = {};
    const result = await this.app.mysql.select('classify', { where: {} });
    if (result) {
      res.code = 0;
      res.msg = '获取所有分类成功';
      res.data = result;
    } else {
      res.code = -1;
      res.msg = '获取所有分类失败';
    }
    return res;
  }
  // 新增章节
  async addClassify(data) {
    const res = {};
    // console.log('addClassify data:', data);
    const result = await this.app.mysql.insert('classify', data);
    if (result) {
      res.code = 0;
      res.msg = '新增分类成功';
    } else {
      res.code = -1;
      res.msg = '新增分类失败';
    }
    return res;
  }
  // 根据id获取某一个具体的分类
  async getClassifyById(classifyId) {
    const res = {};
    const result = await this.app.mysql.get('classify', { id: classifyId });
    if (result) {
      res.code = 0;
      res.msg = '获取分类成功';
      res.data = result;
    } else {
      res.code = -1;
      res.msg = '获取分类失败';
    }
    return res;
  }
  // 修改分类的状态
  async updateClassify(data) {
    const res = {};
    let result;
    if (data.id) {
      // console.log('data:', data);
      result = await this.app.mysql.update('classify', data);
      if (result) {
        res.code = 0;
        res.msg = '修改分类成功';
        res.data = result;
      } else {
        res.code = -1;
        res.msg = '修改分类失败';
      }
    } else {
      res.code = -1;
      res.msg = '分类id不能为空';
    }

    return res;
  }
  // 根据id，隐藏某一个分类
  async deleteClassifyById(id) {
    const res = {};
    let result;
    if (id) {
      result = await this.app.mysql.delete('classify', {id});
      if (result.affectedRows === 1) {
        res.code = 0;
        res.msg = '删除分类成功';
      } else {
        res.code = -1;
        res.msg = '删除分类失败';
      }
    } else {
      res.code = -1;
      res.msg = '分类id不能为空';
    }

    return res;
  }
  // 根据id，删除一个分类

}
module.exports = ClassifyService;
